package angelo.controleDeEstoque.resources;

import java.util.List;

import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;

import angelo.controleDeEstoque.dao.EntradaProdutoDAO;
import angelo.controleDeEstoque.model.EntradaProdutoModel;

@Path("entradaProduto")
public class EntradaProdutoResource {

	@GET
	@Path("/listaDeEntrada")
	@Produces("application/json")
	public List<EntradaProdutoModel> listaDeEntrada(){

		return new EntradaProdutoDAO().ListaDeEntrada();

	}

	@POST
	@Path("/salvar")
	@Produces("application/json")
	public void salvar(EntradaProdutoModel entrada){

		EntradaProdutoDAO entradaDAO = new EntradaProdutoDAO();
		entradaDAO.salvar(entrada);

	}

	@GET
	@Path("/verApenasUmaEntrada/{id}")
	@Produces("application/json")
	public EntradaProdutoModel verApenasUmaEntrada( @PathParam("id") Integer id) {

		return new EntradaProdutoDAO().listarApenasUm(id);

	}
	
	@POST
	@Path("/excluir/{id}")
	@Produces("application/json")
	public void excluir( @PathParam("id") Integer id) {

		EntradaProdutoDAO entradaDAO = new EntradaProdutoDAO();
		
		entradaDAO.delete(id);

	}
	
	@PUT
	@Path("/atualizar")
	@Produces("application/json")
	public void atualizar(EntradaProdutoModel produto) {
		
		EntradaProdutoDAO entradaDAO = new EntradaProdutoDAO();
		entradaDAO.atualizar(produto);
		
	}
	
	@GET
	@Path("/verApenasPreco/{id}")
	@Produces("application/json")
	public EntradaProdutoModel listarApenasPreco(@PathParam("id") Integer id){
		
		return new EntradaProdutoDAO().listarApenasPreco(id);
	}


}
